package com.diliuzun.delivery.mapper;

import com.diliuzun.delivery.entity.User;
import com.diliuzun.delivery.util.StringUtil;

import java.util.HashMap;

public class UserMapperProvider {
    /**
     * 获取修改用户的sql语句
     * @param user
     * @return  sql
     */
    public String getUpdateUserSql(User user) {
        StringBuffer sql = new StringBuffer("update user set yhbh = #{yhbh} ");
        if(StringUtil.isNotEmpty(user.getPwd())){
            sql.append(" ,pwd = #{pwd} ");
        }
        if(StringUtil.isNotEmpty(user.getYhnc())){
            sql.append(" ,yhnc = #{yhnc} ");
        }
        if(StringUtil.isNotEmpty(user.getYhsf())){
            sql.append(" ,yhsf = #{yhsf} ");
        }
        if(StringUtil.isNotEmpty(user.getYhtx())){
            sql.append(" ,yhtx = #{yhtx} ");
        }
        if(StringUtil.isNotEmpty(user.getSex())){
            sql.append(" ,sex = #{sex} ");
        }
        if(StringUtil.isNotEmpty(user.getSjh())){
            sql.append(" ,sjh = #{sjh} ");
        }
        if(StringUtil.isNotEmpty(user.getEmail())){
            sql.append(" ,email = #{email} ");
        }

        sql.append(" where yhbh = #{yhbh}");
        return sql.toString();
    }

    /**
     * 获取查询用户的SQL
     * @param user
     * @return sql
     */
    public String getSelectUsersSql(User user){
        StringBuffer sql = new StringBuffer("select yhbh,yhm,pwd,yhnc,yhsf,sex,yhtx,sjh,email,zcsj from user where 1=1 ");
        if(StringUtil.isNotEmpty(user.getYhm())){
            sql.append(" and yhm like concat('%',#{yhm},'%') ");
        }
        if(StringUtil.isNotEmpty(user.getYhnc())){
            sql.append(" and yhnc like concat('%',#{yhnc},'%') ");
        }
        if(StringUtil.isNotEmpty(user.getYhsf())){
            sql.append(" and yhsf = #{yhsf} ");
        }
        if(StringUtil.isNotEmpty(user.getSex())){
            sql.append(" and sex = #{sex} ");
        }
        if(StringUtil.isNotEmpty(user.getSjh())){
            sql.append(" and sjh like concat('%',#{sjh},'%') ");
        }
        if(StringUtil.isNotEmpty(user.getEmail())){
            sql.append(" and email like concat('%',#{email},'%') ");
        }

        return sql.toString();
    }

    public String getSelectUsersByUser2Sql(HashMap<String,User> map){
        User user1 = map.get("param1");
        User user2 = map.get("param2");
        return "";
    }
}
